package me.zhengjie.pm.projectissue.service.dto;

import lombok.Data;
import java.sql.Timestamp;
import java.util.List;
import me.zhengjie.annotation.Query;

/**
* @author yuxj
* @date 2020-05-02
*/
@Data
public class ProjectIssueQueryCriteria{

    /** 精确 */
    @Query
    private Integer id;

    /** 精确 */
    @Query
    private String ship;

    /** 精确 */
    @Query
    private String shipType;

    /** 精确 */
    @Query
    private Integer projectId;

    @Query(propName = "projectName",joinName = "projectBase",type = Query.Type.INNER_LIKE)
    private String projectName;

    /** 精确 */
    @Query
    private Integer projectStage;

    @Query(propName = "stageName",joinName = "projectStage",type = Query.Type.INNER_LIKE)
    private String projectStageName;

    /** 精确 */
    @Query
    private Integer issueSoftId;

    /** 精确 */
    @Query
    private String issueSoftVersion;

    /** 精确 */
    @Query
    private String issueName;

    /** 模糊 */
    @Query
    private String issueDesc;

    /** 精确 */
    @Query
    private String issueReply;

    /** 精确 */
    @Query
    private String issueType;

    /** 精确 */
    @Query
    private String issueSeverity;

    /** 精确 */
    @Query
    private String priorityLevel;

    /** 模糊 */
    @Query(type = Query.Type.BETWEEN)
    private List<Timestamp> avisoTime;

    /** 模糊 */
    @Query(type = Query.Type.INNER_LIKE)
    private String avisoName;

    /** 精确 */
    @Query
    private String issuePlat;

    /** 精确 */
    @Query
    private String issueSourceType;

    /** 精确 */
    @Query
    private String issueSourceLocate;

    /** 精确 */
    @Query
    private String issueQuality;

    /** 模糊 */
    @Query(type = Query.Type.BETWEEN)
    private List<Timestamp> issueDiscoveryTime;

    /** 模糊 */
    @Query(type = Query.Type.BETWEEN)
    private List<Timestamp> planFinishTime;

    /** 模糊 */
    @Query(type = Query.Type.BETWEEN)
    private List<Timestamp> issueFinishTime;

    /** 精确 */
    @Query
    private String issueFinishState;

    /** 精确 */
    @Query
    private String issueFunctionArea;
}